<?php

/* 
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
namespace app\pay\admin;

use app\common\builder\ZBuilder;
use app\admin\controller\Admin;
use app\pay\model\Pay as PayModel;
use think\Db;

/**
 * 地址管理
 * @package app\admin\controller
 */
class Index extends Admin{
    
    public function index()
    {
        $user=$_SESSION['dolphin_admin_']['user_auth'];
        $map['del'] =0; 
        $map['openid'] =$user['uid']; 
        // dump($map);exit;
        // 排序
        $order = $this->getOrder('createtime desc');
        // 数据列表
        $data_list = PayModel::where($map)->order($order)->paginate();

        return ZBuilder::make('table')
            ->addColumns([ // 批量添加数据列
                ['id', 'ID'],
                ['openid', '用户', 'text'],
                ['appid', 'appid', 'text'],
                ['appSecret', 'appSecret', 'text'],
                ['mch_id', '商户号', 'text'],
                ['appkey','支付key','text'],
                ['createtime', '创建时间', 'text'],
                ['projectid', '项目', 'text'],
                // ['field','证书','files','','1024','cert'],
                ['right_button', '操作', 'btn']
            ])
            ->addTopButtons('add,delete') // 批量添加顶部按钮
            ->addRightButtons(['edit', 'delete' => ['data-tips' => '删除后无法恢复。']]) // 批量添加右侧按钮
            ->setRowList($data_list) // 设置表格数据
            ->fetch(); // 渲染模板
    }

     /**
     * 新增
     * @author LMS
     * @return mixed
     */
    public function add()
    {
        // 保存数据
        if ($this->request->isPost()) {
            $data = $this->request->post();
            $user=$_SESSION['dolphin_admin_']['user_auth'];
            $data['openid']=$user['uid'];
            $data['del']=0;
            $data['status']=1;
            $data['createtime']=date('Y-m-d H:i:s',time());

            if ($user = Db::name('pay')->insert($data)) {
                return $this->success('新增成功', url('index'));
            } else {
                return $this->error('新增失败');
            }
        }

        // 使用ZBuilder快速创建表单
        return ZBuilder::make('form')
            ->setPageTitle('新增') // 设置页面标题
            ->addFormItems([ // 批量添加表单项
                ['text', 'appid', '微信appid'],
                ['text', 'appSecret', '微信appSecret'],
                ['text', 'mch_id', '微信支付商户号'],
                ['text', 'appkey', '微信支付key'],
                ['files','cert','证书','','','1024','cert'],
            ])
            ->fetch();
    }
     /**
     * 编辑
     * @param null $id 用户id
     * @author 蔡伟明 <314013107@qq.com>
     * @return mixed
     */
    public function edit($id = null)
    {
        if ($id === null) return $this->error('缺少参数');

        // 保存数据
        if ($this->request->isPost()) {
            $data = $this->request->post();
            Db::name('pay')->where('id', $id)->update($date);

            if (Db::name('pay')->where('id', $id)->update($date)) {
                return $this->success('编辑成功', url('index'));
            } else {
                return $this->error('编辑失败');
            }
        }

        // 获取数据
        $info = Db::name('pay')->where('id', $id)->field('password', true)->find();

        // 使用ZBuilder快速创建表单
        return ZBuilder::make('form')
            ->setPageTitle('编辑') // 设置页面标题
            ->addFormItems([ // 批量添加表单项
                ['text', 'appid', '微信appid'],
                ['text', 'appSecret', '微信appSecret'],
                ['text', 'mch_id', '微信支付商户号'],
                ['text', 'appkey', '微信支付key'],
                ['files','cert','证书','','','1024','cert'],
            ])
            ->setFormData($info) // 设置表单数据
            ->fetch();
    }
    /**
     * 删除
     * @param type $id
     */
    public function delete($ids = null) {
        if ($ids === null)   return $this->error('非法操作');
        $info = Db::name('pay')->where(array('id' => $ids))->field('id')->find();
        // dump($info);exit;

        if (empty($info) ) {
            return $this->error('数据错误');
        }

            $result = Db::name('pay')->where('id', $ids)->update(array('del' => 1));
            if ($result) {
                $this->success('删除成功！');
            } else {
                $this->error('删除失败，请稍后重试！');
            }

    }
}
